As a motor having high efficiency and a wide variable speed range, a permanent magnetic synchronous motor (PMSM), in particular, an interior permanent magnetic synchronous motor (IPMSM) in which a permanent magnet is embedded in a rotor has found extensive applications such as a compressor driving motor of an air conditioner for vehicle and a drive motor for electric automobile. Demand for the motor is expected.
A motor control device that controls driving of the motor of this type is composed of a motor, an inverter, a direct-current power supply, and a controller incorporating a microcomputer.
In the operation of the motor, in general, the controller detects an electric current flowing through a coil wound around a stator (armature) of the motor and causes the electric current to follow a target current phase through current feedback control. In the current feedback control, the controller decomposes the target current phase into a d-axis current Id, which is a d-axis component parallel to a magnetic field, and a q-axis current Iq, which is a q-axis component orthogonal to the magnetic field, and sets, as the target current phase, a current vector composed from the d-axis current Id and the q-axis current Iq on a d-q-axis coordinate, and controls the current vector. Consequently, it is possible to highly efficiently operate the motor at optimum torque.
In the motor, it is a common practice to use so-called sensorless control, which includes detecting an induced voltage of the motor from, for example, information concerning an electric current and a voltage detected by a controller and effectively detecting a rotor position to control the motor without using a physical sensor. Actual d and q axes are not directly known during the sensorless control. Therefore, the controller sets imaginary axes respectively for the original d and q axes and executes the current vector control on the imaginary axes.
However, it is known that, since the imaginary axis is only an axis assumed in the controller, an angle error of Δθ is present between actual d and q axes and, in order to efficiently stably operate the motor, it is necessary to quickly and accurately converge this Δθ to zero.
For example, Patent Literature 1 discloses the following simplified axial position error estimation expression for estimating an angle error Δθc of an axial position:
                    ⁢          [              Expression        ⁢                                  ⁢        1            ]                                                Δ            ⁢                                                  ⁢            θ            ⁢                                                  ⁢            c                    ≈                    ⁢                                    tan                              -                1                                      (                                                            Vd                  **                                -                                                      R                    *                                    ·                  Idc                                +                                  ω                  1                  *                                -                                                      Lq                    *                                    ·                  Iqc                                                                              Vq                  **                                -                                                      R                    *                                    ·                  Iqc                                -                                                      ω                    1                    *                                    ·                                      Lq                    *                                    ·                  Idc                                -                                                      (                                          R                      -                                              R                        *                                                              )                                    ·                  Idc                                                      )                                                        =                    ⁢                                    tan                              -                1                                      ⁡                          (                                                                    Vd                    **                                    -                                                            R                      *                                        ·                    Idc                                    +                                                            ω                      1                      *                                        ·                                          Lq                      *                                        ·                    Iqc                                                                                        Vq                    **                                    -                                      R                    ·                    Iqc                                    -                                                            ω                      1                      *                                        ·                                          Lq                      *                                        ·                    Idc                                                              )                                          
In the expression, Δθc: axial position estimation error (rotor position error, current phase error), Vdc: d-axis component of an applied voltage, Vqc: q-axis component of the applied voltage, Idc: d-axis current, Iqc: q-axis current, Lq: q-axis inductance, Ld: d-axis inductance, R: winding resistance of a coil, and ω1: frequency of the applied voltage. All of Vdc, Vqc, Idc, and Iqc are assumed values in the controller premised on the imaginary axes, all of Lq, Ld, and R are machine constants of the motor, and ω1 is a measured value. During the sensorless control, the controller performs control in order to converge Δθc described above to zero.
The winding resistance R of the axial position error estimation expression of Expression 1 is the machine constant of the motor and is a parameter including an individual difference peculiar to the motor. Therefore, an error between a theoretical value and an actual value of the parameter greatly affects axial position estimation accuracy. Such an error of the parameter not only occurs from the individual difference of the motor but also fluctuates according to an environment to which the motor is exposed. In particular, since the coil is formed of a copper wire in general, actual winding resistance of the coil tends to fluctuate according to a temperature to which the motor is exposed and the parameter error also increases.
When the parameter error increases, the denominator term in the axial position error estimation expression may undesirably be zero or minus. In this case, an axial position cannot be estimated and a rotor position cannot be estimated either. Therefore, the motor may be operated while deviating from a stable operation limit for enabling the motor to be stably operated in the sensorless control and step-out may occur.
Therefore, in the related art, an error between a setting value R′ set as a theoretical value of winding resistance and an actual value R of the winding resistance is corrected on the basis of a current phase detected in the d-q axis coordinate system.